#pragma once

namespace l8
{

template <typename T>
static inline int Compare(const T& a, const T& b)
{
    if (a == b)
    {
        return 0;
    }
    else if (a < b)
    {
        return -1;
    }

    return 1;
}


template <typename T>
static inline int PointerValueCompare(const T* a, const T* b)
{
    return Compare<T>(*a, *b);
}

}

